Control apparatus, transport apparatus, computer readable storage medium, and control method

ABSTRACT

A control apparatus includes a force sensation information acquiring unit for acquiring force sensation information representing a magnitude of at least one of a force and a torque at a distal end of a manipulator while a target item is being transported; a mass information acquiring unit for acquiring mass information representing a mass of the item; a plan information acquiring unit for acquiring plan information representing content of a plan of a trajectory; a force sensation estimating unit for estimating a magnitude of at least one of a force and a torque to be detected at the distal end of the manipulator; and a first detecting unit for detecting an abnormality, based on the magnitude of at least one of the force and the torque represented by the force sensation information and the magnitude of at least one of the force and the torque estimated by the estimating unit.

CROSS REFERENCE TO RELATED APPLICATION

This is a continuation application of International Application No.PCT/JP2019/042671 filed on Oct. 30, 2019, which claims priority to theU.S. Provisional Application No. 62/752,756 filed in US on Oct. 30, 2018and Japanese Patent Application No. 2019-175477 filed in JP on Sep. 26,2019, the contents of each of which are incorporated herein byreference.

BACKGROUND 1. Technical Field

The present invention relates to a control apparatus, a transportapparatus, a computer readable storage medium, and a control method.

2. Related Art

A transfer apparatus is known that transfers items using a robot arm, asshown in Non-Patent Document 1, for example.

-   Non-Patent Document 1: ISHIDA CO., LTD, “Dynamic Weighing Systems    IMAS-G”, [Online], [Search: Jul. 15, 2019], Internet:    <haps://www.ishida.co.jp/ww/jp/products/weighing/dynamicweighingsystem/imas-g.cfm>

BRIEF DESCRIPTION OF THE DRAWING

FIG. 1 schematically shows an example of a system configuration of atransfer system 100.

FIG. 2 schematically shows an example of a system configuration of therobot 130.

FIG. 3 schematically shows an example of the gripping member 246.

FIG. 4 schematically shows an example of an internal configuration ofthe transfer control apparatus 150.

FIG. 5 schematically shows an example of an internal configuration ofthe transfer control unit 436.

FIG. 6 schematically shows an example of a trajectory path of thegripping member 246.

FIG. 7 schematically shows an example of an internal configuration ofthe abnormality detecting unit 544.

FIG. 8 schematically shows an example of an internal configuration ofthe changing unit 546.

FIG. 9 schematically shows an example of the transfer process performedby the transfer system 100.

FIG. 10 schematically shows an example of an internal configuration of acomputer 3000.

DESCRIPTION OF EXEMPLARY EMBODIMENTS

Hereinafter, some embodiments of the present invention will bedescribed. The embodiments do not limit the invention according to theclaims, and all the combinations of the features described in theembodiments are not necessarily essential to means provided by aspectsof the invention. In the drawings, identical or similar portions aregiven the same reference numerals, and redundant descriptions may beomitted.

[Outline of the Transfer System 100]

FIG. 1 schematically shows an example of a system configuration of atransfer system 100. In the present embodiment, the transfer system 100can include one or more depalletizing platforms 110, one or morereception platforms 120, one or more robots 130, a transfer controlapparatus 150, and one or more image capturing apparatuses 160, forexample. In the present specification, the term “one or more” means “oneor a plurality”.

In the present embodiment, the reception platform 120 can include asensor 180 and a sensor 190 for detecting a package 102 (also sometimesreferred to as a workpiece) gripped by a robot 130, for example. In thepresent embodiment, the robot 130 can include a robot arm 132, a drivecontrol unit 134, and an end effector 140, for example.

Each unit of the transfer system 100 may transmit and receiveinformation to and from another unit of the transfer system 100, via acommunication network. In the present embodiment, the communicationnetwork may be a transmission path for wired communication, atransmission path for wireless communication, or a combination of atransmission path for wired communication and a transmission path forwireless communication. The communication network may include a wirelesspacket communication network, the Internet, a P2P network, a dedicatedline, a VPN, a power line communication line, or the like. Thecommunication network may include (i) a mobile communication networksuch as a mobile telephone network or (ii) a wireless communicationnetwork such as wireless MAN (e.g. WiMAX (registered trademark)),wireless LAN (e.g. WiFi (registered trademark)), Bluetooth (registeredtrademark), Zigbee (registered trademark), or NFC (Near FieldCommunication).

In the present embodiment, the transfer system 100 can transfer apackage 102 from the depalletizing platform 110 to the receptionplatform 120. As an example, the transfer system 100 can use the robot130 to transfer one or more packages 102 mounted on the depalletizingplatform 110 to the reception platform 120, one at a time.

The package 102 may be a packaging material used for packaging productsor a packaging material used to provide a service. The package 102 maybe a box-shaped packaging material. A single product or item, or aplurality of products or items, may be placed inside the package 102.

In one embodiment, packaging materials with the same or similar outerappearances are used to wrap products of the same type. Furthermore,packaging materials with the same or similar outer appearances are usedto provide services of the same type. In another embodiment, as anexample, there are cases where the types of items contained in twopackaging materials with the same or similar outer appearances aredifferent from each other, as a result of the packaging materials beingreused.

In the present embodiment, the transfer system 100 can perform aregistration process, a planning process, and a transport process,relating to the transfer of the packages 102. In the present embodiment,the transfer system 100 can perform the registration process for apackage that has not yet been registered while the robot arm 132transfers this unregistered package 102 from the depalletizing platform110 to the reception platform 120.

In the present embodiment, the transfer system 100 may omit theregistration process for packages 102 that have already been registered.It is possible for there to be a discrepancy between the registered dataand the actual measured data, while the robot arm 132 can transfer aregistered package 102 from the depalletizing platform 110 to thereception platform 120. In such a case, the transfer system 100 mayupdate the data of this registered package 102 while this registeredpackage 102 is being transferred.

In the registration process, the transfer system 100 can register acharacteristic of the package 102 in a database. Examples of thecharacteristic of the package 102 include dimensions, a shape, a featureof the outer appearance, mass, position of the center of mass, a gripposition, a grip state, and the like. Examples of the feature of theouter appearance include a character, symbol, code, image, illustration,pattern, and the like applied to the outer appearance. The position ofthe center of mass of a package 102 may be a relative position between areference position of the package 102 and the center of mass of thepackage 102.

In the planning process, the transfer system 100 can determine a package102 (as described above, sometimes referred to as a workpiece) to be thetarget of the transfer process, among one or more packages 102 arrangedon the depalletizing platform 110. Furthermore, the transfer system 100can plan at least one of a trajectory path of a wrist portion (alsosometimes referred to as a distal end) of the robot arm 132 and atrajectory path of the end effector 140, in relation to the transfer ofa workpiece. As an example, the transfer system 100 can plan thetrajectory path from when the robot 130 grips a workpiece arranged onthe depalletizing platform 110 to when the robot 130 transfers thisworkpiece on the reception platform 120.

The trajectory path can show the change over time of the position andposture of the wrist portion of the robot 130 or the end effector 140.In one embodiment, the trajectory path can be expressed by informationrepresenting a plurality of timings and information representing theangle of each of a plurality of joints included in the robot arm 132 ateach timing. The information representing the plurality of timings maybe information representing the time from when the workpiece passes areference position. The information representing the angle of each ofthe plurality of joints may be information directly representing theangle of each joint, or may be information indirectly representing theangle of each joint. Examples of the information indirectly representingthe angle of each joint can include information representing theposition and posture of the wrist portion of the robot 130 or the endeffector 140, information representing the output of a motor for settingthe angle of each joint to a specified value, and the like.

In the transport process, the transfer system 100 can control theoperation of the robot 130 such that the wrist portion of the robot arm132 or the end effector 140 can move along the trajectory path plannedin the planning process. The transport process can include a drawingnear step, a gripping step, a lifting step, a movement step, a placementstep, and a release step, for example.

In the drawing near step, the robot arm 132 can bring the end effector140 near the workpiece arranged on the depalletizing platform 110. Inthe gripping step, the end effector 140 can grip the workpiece. In thelifting step, the robot arm 132 can lift up the workpiece gripped by theend effector 140. In the movement step, the robot arm 132 can move theworkpiece gripped by the end effector 140 to be above the receptionplatform 120. In the placement step, the robot arm 132 can place theworkpiece gripped by the end effector 140 onto the reception platform120. In the release step, the end effector 140 can release theworkpiece.

In the present embodiment, the transfer system 100 can detect anabnormality relating to the transport of a workpiece. The transfersystem 100 may detect the abnormality relating to the transport of theworkpiece based on measured values of the mass and center of mass of theworkpiece. In this way, the transfer system 100 can quickly andaccurately detect the abnormality relating to the transport of theworkpiece. If an abnormality relating to the transport of the workpieceis detected, the transfer system 100 may adjust the movement velocity ofthe workpiece or stop the transport process of the workpiece.

Examples of abnormalities relating to the transport of the workpiece caninclude at least one of failure to identify the workpiece, failure togrip the workpiece, excessive pressing of the workpiece, dropping of theworkpiece, damage of the workpiece, and a collision involving theworkpiece. Examples of a failure to identify the workpiece can includean incorrect judgment of an edge of the workpiece, an incorrectidentification of a characteristic of the workpiece, and the like.Examples of an incorrect identification of a characteristic of theworkpiece can include an error in the image recognition of the outerappearance of the workpiece, an error in the information registered inthe database used to identify the workpiece, and the like.

As an example, when a characteristic of the workpiece is identifiedbased on a feature of the outer appearance of the workpiece, thetransfer system 100 can first judge the edge of the workpiece byanalyzing an image of the workpiece. Next, the transfer system 100 canextract the feature of the outer appearance of the workpiece byanalyzing the image of the workpiece. For each product or service, thetransfer system 100 can access a database in which the feature of theouter appearance of the package used for this product or service and thecharacteristic of this package can be associated with each other, andcan acquire the information representing the characteristic of a packagematching the extracted feature. In this case, if the edge of theworkpiece cannot be correctly judged, if the feature of the outerappearance of the workpiece cannot be correctly extracted, or if thereis an error in the content of the database, the characteristic of theworkpiece may not be identified correctly.

Examples of failure to grip the workpiece can include a case where theworkpiece grip position is inappropriate, a case where the workpiecegrip strength is insufficient, and the like. Examples of excessivepressing of the workpiece can include (i) a case where the end effector140 presses the workpieces excessively due to an error in a settingrelating to the height of the end effector 140 in the workpiece grippingstep, (ii) a case where the end effector 140 presses the workpiecesexcessively due to an error in a setting concerning the height of theend effector 140 in the workpiece release step, (iii) a case where theend effector 140 presses the workpieces excessively due to an error inthe database relating to the height of the workpiece, and the like.

Examples of dropping the workpiece can include dropping the entireworkpiece, dropping a portion of the workpiece, and the like. Damage ofthe workpiece can include excessive deformation of the shape of theworkpiece, separation of a portion of the workpiece, excessive change inthe arrangement of items contained in the workpiece, and the like.Examples of a collision involving the workpiece can include a collisionbetween the workpiece and the reception platform 120, a collisionbetween the workpiece and another workpiece, and the like.

[Outline of Each Component of the Transfer System 100]

In the present embodiment, the depalletizing platform 110 can have oneor more packages 102 mounted thereon. The depalletizing platform 110 maybe a palette.

In the present embodiment, the reception platform 120 can transport, toa predetermined destination, the packages 102 which are taken out fromthe depalletizing platform 110 and placed on the reception platform 120by the robot 130. The reception platform 120 may be a conveyor. Thereception platform 120 may include one or more conveyors.

In the present embodiment, the robot 130 can perform a transport processfor the package 102. The details of each unit of the robot 130 aredescribed further below.

In the present embodiment, the robot arm 132 may include a manipulator.This manipulator may be a multijointed manipulator.

In the present embodiment, the drive control unit 134 can control theoperation of the robot arm 132 and the end effector 140. The drivecontrol unit 134 may control the operation of the robot arm 132 and theend effector 140 in accordance with instructions from the transfercontrol apparatus 150. The drive control unit 134 may acquire theoutputs of one or more sensors arranged on the robot arm 132. The drivecontrol unit 134 may acquire the outputs of one or more sensors arrangedon the end effector 140. The drive control unit 134 may transmit theoutputs of the sensors described above to the transfer control apparatus150.

In the present embodiment, the end effector 140 can grip and release thepackages 102. For example, the end effector 140 can grip a package 102arranged on the depalletizing platform 110. The end effector 140 cangrip the package 102 until the package 102 has been transported to apredetermined position above the reception platform 120. After this, theend effector 140 can release the package 102.

In the present embodiment, the transfer control apparatus 150 canmonitor the state of each unit of the transfer system 100. Furthermore,the transfer control apparatus 150 can control the operation of eachunit of the transfer system 100. The details of the transfer controlapparatus 150 are described further below.

In the present embodiment, the image capturing apparatus 160 can capturean image of the depalletizing platform 110 and output image data of thedepalletizing platform 110 to the transfer control apparatus 150. Theimage capturing apparatus 160 may be arranged above the depalletizingplatform 110. In this way, the transfer control apparatus 150 canacquire image data of the top surface of the package 102 mounted on thedepalletizing platform 110.

The image capturing apparatus 160 may include a plurality of cameras orsensors that are each arranged at a different position. Each of thesecameras or sensors may output, by itself, a two-dimensional image,three-dimensional image, or distance image (sometimes referred to as apoint group) of a subject. The image capturing apparatus 160 may processthe outputs of the plurality of cameras or sensors, and output athree-dimensional image or distance image (sometimes to referred to as apoint group) of the subject. The image may be a still image or a movingimage.

In the present embodiment, the details of the transfer system 100 aredescribed using an example of a case where the image capturing apparatus160 captures an image of the depalletizing platform 110. However, thesubject of the image capturing apparatus 160 is not limited to thepresent embodiment. In another embodiment, the image capturing apparatus160 can capture an image of the depalletizing platform 110 and thereception platform 120. The image capturing apparatus 160 may capture animage of the entire depalletizing platform 110.

In the present embodiment, the sensor 180 can be used to detect theheight of the workpiece. As long as the sensor 180 is a sensor that candetect the presence or lack of an object, the details thereof are notparticularly limited. The sensor 180 may be a non-contact type of objectdetection sensor that uses light, a laser, ultrasonic waves, or thelike. The sensor 180 may be a contact type of object detection sensor.

As an example, the robot 130 can slowly lower the workpiece afterlifting this workpiece to a prescribed height above the sensor 180.During this time, the robot 130 can output the information representingthe position and posture of the end effector 140 to the transfer controlapparatus 150. When the sensor 180 detects the presence of a workpiece,the sensor 180 can output information representing that the workpiecehas been detected to the transfer control apparatus 150.

The transfer control apparatus 150 can store information representing arelative positional relationship between the end effector 140 and thetop surface of the workpiece, for example. In this way, the transfercontrol apparatus 150 can determine the position (e.g. the height fromthe floor surface) of the top surface of the workpiece, from theposition and posture of the end effector 140. Furthermore, the transfercontrol apparatus 150 can store information representing the detectionposition (e.g. the height from the floor surface) of the sensor 180. Inthis way, the transfer control apparatus 150 can determine the position(e.g. the height from the floor surface) of the bottom surface of theworkpiece. The transfer control apparatus 150 can calculate the heightof the workpiece based on the position of the bottom surface of theworkpiece and the position of the top surface of the workpiece.

In the present embodiment, the sensor 190 can be used to determine atiming at which the end effector 140 releases the workpiece. As long asthe sensor 190 is a sensor that can detect the presence or lack of anobject, the details thereof are not particularly limited. The sensor 190may be a non-contact type of object detection sensor that uses light, alaser, ultrasonic waves, or the like. The sensor 190 may be a contacttype of object detection sensor.

[Detailed Configuration of Each Unit of the Transfer System 100]

Each unit of the transfer system 100 may be realized by hardware, bysoftware, or by both hardware and software. At least part of each unitof the transfer system 100 may be realized by a single server or by aplurality of servers. At least part of each unit of the transfer system100 may be realized on a virtual machine or a cloud system. At leastpart of each unit of the transfer system 100 may be realized by apersonal computer or a mobile terminal. The mobile terminal can beexemplified by a mobile telephone, a smart phone, a PDA, a tablet, anotebook computer or a laptop computer, a wearable computer, or thelike. Each unit of the transfer system 100 may store information, usinga distributed network or distributed ledger technology such as blockchain.

If at least some of the components forming the transfer system 100 arerealized by software, these components realized by software may berealized by starting up a program in which operations corresponding tothese components are defined, with an information processing apparatushaving a general configuration. The information processing apparatushaving the general configuration described above includes, for example,(i) a data processing apparatus having a processor such as a CPU or aGPU, a ROM, a RAM, a communication interface, and the like, (ii) aninput apparatus such as a keyboard, a touch panel, a camera, amicrophone, various sensors, or a GPS receiver, (iii) an outputapparatus such as a display apparatus, a speaker, or a vibrationapparatus, and (iv) a storage apparatus (including an external storageapparatus) such as a memory or an HDD.

In the information processing apparatus having the general configurationdescribed above, the data processing apparatus or the storage apparatusdescribed above may store a program. The program may be stored in anon-transitory computer readable storage medium. The program can causethe information processing apparatus described above to perform theoperations defined by this program, by being executed by the processor.

The program may be stored in a non-transitory computer readable storagemedium. The program may be stored in a computer readable medium such asa CD-ROM, a DVD-ROM, a memory, or a hard disk, or may be stored in astorage apparatus connected to a network. The program may be installedin a computer forming at least part of the transfer system 100, from thecomputer readable medium or the storage apparatus connected to thenetwork. The computer may be caused to function as at least a portion ofeach unit of the transfer system 100, by executing the program.

The program that causes the computer to function as at least a portionof each unit of the transfer system 100 may include modules in which theoperations of the units of the transfer system 100 are defined. Thisprogram or these modules can act on the data processing apparatus, theinput apparatus, the output apparatus, the storage apparatus, and thelike to cause the computer to function as each unit of the transfersystem 100 and to cause the computer to perform the informationprocessing method in each unit of the transfer system 100.

By having the computer read this program, the information processesdescribed in the program can function as the specific means realized bythe cooperation of software relating to these programs and varioushardware resources of some or all of the transfer system 100. Thesespecific means can realize computation or processing of the informationcorresponding to an intended use of the computer in the presentembodiment, thereby forming the transfer system 100 corresponding tothis intended use.

The above program may be a program that causes a computer to function asthe transfer control apparatus 150. The above program may be a programthat causes a computer to perform the information processing method ofthe transfer control apparatus 150.

The transfer system 100 may be an example of a transport apparatus. Thepackage 102 may be an example of an item and a target item. The robot130 may be an example of the transport apparatus. The robot arm 132 maybe an example of a manipulator. The drive control unit 134 may be anexample of a force sensation information acquiring unit, an angleinformation acquiring unit, and a depressurization information acquiringunit. The end effector 140 may be an example of a gripping unit. Thetransfer control apparatus 150 may be an example of a control apparatus.The image capturing apparatus 160 may be an example of an imageinformation acquiring unit. The workpiece may be an example of a targetitem. The package 102 that is a target of the transfer process may be anexample of a target item.

FIG. 2 schematically shows an example of a system configuration of therobot 130. As shown in FIG. 2, in the present embodiment, the robot 130can include the robot arm 132, the end effector 140 attached to thedistal end of the robot arm 132, and the drive control unit 134 thatcontrols the robot arm 132 and the end effector 140. In the presentembodiment, the robot arm 132 can include a plurality of motors 232 anda plurality of encoders 234. In the present embodiment, the end effector140 can include a force sensation sensor 242 and a gripping member 246.

In the present embodiment, each of the plurality of motors 232 canadjust the angle of a respective one of the plurality of joints includedin the robot arm 132. Each of the plurality of motors 232 may adjust theangle of the corresponding joint according to instructions from thedrive control unit 134. Each of the plurality of motors 232 may outputinformation representing a current value (sometimes referred to ascurrent information) to the drive control unit 134. Each of theplurality of motors 232 may output the current information, in whichinformation representing a timing and information representing thecurrent value at this timing are associated with each other, to thedrive control unit 134.

In the present embodiment, each of the plurality of encoders 234 canoutput information representing the angle of a respective one of theplurality of joints included in the robot arm 132 (sometimes referred toas angle information) to the drive control unit 134. Each of theplurality of encoders 234 may output the angle information, in whichinformation representing a timing and information representing the angleof the corresponding joint at this timing are associated with eachother, to the drive control unit 134.

In the present embodiment, the force sensation sensor 242 can bearranged between the distal end of the robot arm 132 and the grippingmember 246. The force sensation sensor 242 can output informationrepresenting the magnitude of at least one of the force and the torqueat the distal end of the robot arm 132 (sometimes referred to as forcesensation information). The force sensation sensor 242 may output theforce sensation information in which information representing a timingand information representing the magnitude of the at least one of theforce and the torque at this timing are associated with each other. Theforce sensation sensor 242 may output the force sensation informationrepresenting the magnitude and direction of at least one of the forceand the torque at the distal end of the robot arm 132. The forcesensation sensor 242 may output the force sensation information in whichinformation representing a timing and information representing themagnitude and direction of the at least one of the force and the torqueat this timing are associated with each other.

For example, the force sensation information can include informationrepresenting the magnitude of the force in the x-direction, themagnitude of the force in the y-direction, and the magnitude of theforce in the z-direction. The force sensation information may includeinformation representing the magnitude of the torque in the x-direction,the magnitude of the torque in the y-direction, and the magnitude of thetorque in the z-direction. The force sensation information may includeinformation representing the magnitude of the force in the x-direction,the magnitude of the force in the y-direction, the magnitude of theforce in the z-direction, the magnitude of the torque in thex-direction, the magnitude of the torque in the y-direction, and themagnitude of the torque in the z-direction. The coordinate system is notlimited to the detailed example above.

In the present embodiment, the gripping member 246 can grip the package102 that is to be the transport target. The gripping member 246 caninclude a mechanism capable of gripping and releasing the package 102,according to instructions from the drive control unit 134, and thedetails thereof are not particularly limited. The gripping member 246may grip the package 102 by sandwiching the package 102, or may grip thepackage 102 by adhering the package 102 thereto. The details of thegripping member 246 are described further below.

FIG. 3 schematically shows an example of the gripping member 246. In thepresent embodiment, the gripping member 246 can include a main body 310,an adhesion pad 320, a valve 330, and an intake pipe 340. In the presentembodiment, a depressurization chamber 312 can be formed inside the mainbody 310. A connection member 314 can be arranged outside the main body310.

In the present embodiment, the main body 310 can be attached to thedistal end of the robot arm 132, via the force sensation sensor 242. Thedepressurization chamber 312 can be connected to an externaldepressurization source, via the valve 330 and the intake pipe 340. Theconnection member 314 can connect the main body 310 and the forcesensation sensor 242.

The adhesion pad 320 can be attached to the main body 310 in a manner toprotrude from the main body 310. The adhesion pad 320 can have a hollowshape, for example. The adhesion pad 320 can be attached to the mainbody 310 in a manner to realize communication between the inside of theadhesion pad 320 and the inside of the depressurization chamber 312. Theadhesion pad 320 can contact the package 102 and adhere the package 102thereto, using a pressure difference between the inside and the outsideof the adhesion pad 320.

In the present embodiment, the valve 330 can adjust the pressure insidethe depressurization chamber 312. The valve 330 may operate according toinstructions from the drive control unit 134. For example, the valve 330can cause a reduction in the pressure inside the depressurizationchamber 312 by causing communication between the depressurizationchamber 312 and the intake pipe 340. The valve 330 may cause an increasein the pressure inside the depressurization chamber 312 by opening thedepressurization chamber 312 to the outside atmosphere.

In the present embodiment, one end portion of the intake pipe 340 can beconnected to the external depressurization source. The other end portionof the intake pipe 340 can be connected to the depressurization chamber312 via the valve 330. Therefore, the intake pipe 340 can suck out theair that is inside the depressurization chamber 312.

FIG. 4 schematically shows an example of an internal configuration ofthe transfer control apparatus 150. In the present embodiment, thetransfer control apparatus 150 can include an image data acquiring unit422, an arm information acquiring unit 424, a hand information acquiringunit 426, a input/output control unit 432, an image capturing controlunit 434, a transfer control unit 436, a product information registeringunit 440, and a storage unit 450. In the present embodiment, the storageunit 450 can include a product information storage unit 452, a workpieceinformation storage unit 454, a model information storage unit 456, anda setting information storage unit 458.

In the present embodiment, the image data acquiring unit 422 can acquirethe image data output by the image capturing apparatus 160. For example,the image data acquiring unit 422 can acquire the image data of thepackage 102 at a point in time before the package 102 that is to be thetransport target is gripped by the robot 130. The image data acquiringunit 422 may output the acquired image data to the transfer control unit436.

In the present embodiment, the arm information acquiring unit 424 canacquire information concerning the robot arm 132. The arm informationacquiring unit 424 may acquire information concerning the state of therobot arm 132 during an interval in which the package 102 is beingtransported. For example, the arm information acquiring unit 424 canacquire the outputs of the one or more sensors arranged in the robot arm132. The arm information acquiring unit 424 may acquire at least one ofthe angle information and the current information concerning the robotarm 132. The arm information acquiring unit 424 may output the acquiredinformation to the transfer control unit 436.

In the present embodiment, the hand information acquiring unit 426 canacquire information concerning the end effector 140. The handinformation acquiring unit 426 may acquire information concerning thestate of the end effector 140 during an interval in which the package102 is being transported. For example, the hand information acquiringunit 426 can acquire the outputs of the one or more sensors arranged onthe end effector 140. The hand information acquiring unit 426 mayacquire the force sensation information concerning the end effector 140.The hand information acquiring unit 426 may acquire informationrepresenting the magnitude of the pressure inside the depressurizationchamber 312 (sometimes referred to as the depressurization information).The hand information acquiring unit 426 may acquire informationrepresenting an open/closed state of the valve 330. The hand informationacquiring unit 426 may output the acquired information to the transfercontrol unit 436.

In the present embodiment, the input/output control unit 432 can controlthe input to and output from the transfer system 100. For example, theinput/output control unit 432 can control the input of information froma user or another information processing apparatus to the transfersystem 100. The input/output control unit 432 may control the output ofinformation from the transfer system 100 to a user or anotherinformation processing apparatus. The input/output control unit 432 maycontrol the input and output of information between the robot 130, thetransfer control apparatus 150, and the image capturing apparatus 160.In the present embodiment, the image capturing control unit 434 cancontrol the image capturing apparatus 160. In the present embodiment,the transfer control unit 436 can control at least one of the receptionplatform 120 and the robot 130. The details of the transfer control unit436 are described further below.

In the present embodiment, the product information registering unit 440can register the information concerning the package 102 that is to be atarget of the transport process by the robot 130, in the productinformation storage unit 452. The product information registering unit440 may register information representing the characteristic of thepackage 102 in the product information storage unit 452.

For example, the product information registering unit 440 can acquireinformation representing the characteristic of the workpiece from thetransfer control unit 436. As described above, examples of thecharacteristic of the workpiece can include dimensions, shape, a featureof the outer appearance, mass, position of the center of mass, a gripposition, a grip state, and the like. Next, the product informationregistering unit 440 can access the product information storage unit 452and judges whether a product matching the feature of the outerappearance of the workpiece is already registered in the productinformation storage unit 452. If it is judged that a product thatmatches the feature of the outer appearance of the workpiece is not yetregistered in the product information storage unit 452, the productinformation registering unit 440 can create a record concerning a newproduct and registers information representing the characteristic of theworkpiece.

In the present embodiment, the storage unit 450 can store each type ofinformation. The storage unit 450 may store the information to be usedin the information processing in the transfer control apparatus 150. Thestorage unit 450 may store information generated by the informationprocessing in the transfer control apparatus 150. The storage unit 450may, in response to a request from any unit of the transfer system 100,extract information that matches a condition included in this requestand output the extracted information as a response to the request.

In the present embodiment, for each product or service, the productinformation storage unit 452 can store the feature of the outerappearance of the package 102 to be used for this product or service andanother characteristic concerning the package 102, in association witheach other. Examples of the other characteristics concerning the package102 can include the dimensions, shape, mass, position of the center ofmass, grip position, grip state, and the like.

In the present embodiment, the workpiece information storage unit 454can store each type of information concerning the package 102 that iscurrently to be the target of the transport process by the robot 130(sometimes referred to as workpiece information). Examples of theworkpiece information can include information concerning the dimensions,shape, mass, position of the center of mass, grip position, grip state,and the like.

The planar dimensions of the workpiece can be determined based on theimage of the workpiece acquired by the image data acquiring unit 422,for example. The height of the workpiece can be determined based on theposition and posture of the robot arm 132 acquired by the arminformation acquiring unit 424 and the output of the sensor 180, forexample. The mass and the center of mass of the workpiece can bedetermined based on the output of the force sensation sensor 242acquired by the hand information acquiring unit 426. The grip positionand the grip state of the workpiece can be determined based on the imageof the workpiece acquired by the image data acquiring unit 422, forexample. The grip position and the grip state of the workpiece may bedetermined based on the image of the workpiece acquired by the imagedata acquiring unit 422 and the output of the force sensation sensor 242acquired by the hand information acquiring unit 426. The grip state ofthe workpiece may be determined or corrected based on the pressureinside the depressurization chamber 312, which is acquired by the handinformation acquiring unit 426.

In the present embodiment, the model information storage unit 456 canstore a three-dimensional model of each unit of the transfer system 100.For example, the model information storage unit 456 can store athree-dimensional model of the reception platform 120. The modelinformation storage unit 456 may store a three-dimensional model of therobot 130. The model information storage unit 456 may store athree-dimensional models of one or more packages 102 mounted on thedepalletizing platform 110. The three-dimensional model of a package 102may be created based on the image data output by the image capturingapparatus 160. The model information storage unit 456 may store athree-dimensional models of objects (sometimes referred to as obstacles)arranged inside an action radius of the robot 130 and in the vicinity ofthe action radius. The three-dimensional models described above may berelatively precise models, or may be simplified models.

The setting information storage unit 458 can store informationindicating the content of various setting relating to each unit of thetransfer system 100. The setting information storage unit 458 may storeinformation relating to an amount of mass that is transportable by theend effector 140. This transportable mass may be a rated transportablemass of the end effector 140, or may be a maximum transportable masspossible within the prescribed range of a transport velocity or atransport acceleration. The setting information storage unit 458 maystore information representing the rated output of the robot 130. Thesetting information storage unit 458 may store information representinga setting value relating to an upper limit of the output of the robot130. The setting information storage unit 458 may store informationrepresenting a setting value relating to an upper limit of a transportvelocity or a transport acceleration of the robot 130.

The setting information storage unit 458 may store information relatingto a communication delay between the robot 130 and the transfer controlapparatus 150. The setting information storage unit 458 may storeinformation representing the length of a delay time from when theencoder 234 outputs data to when the transfer control apparatus 150acquires this data. The setting information storage unit 458 may storeinformation representing the length of a delay time from when the forcesensation sensor 242 outputs data to when the transfer control apparatus150 acquires this data. The setting information storage unit 458 maystore information representing threshold values to be used for variousjudgments, and may store information representing the content ofconditions to be used for various judgments.

The image data acquiring unit 422 may be an example of an imageinformation acquiring unit. The arm information acquiring unit 424 maybe an example of an angle information acquiring unit. The handinformation acquiring unit 426 may be an example of a force sensationinformation acquiring unit and a depressurization information acquiringunit. The transfer control unit 436 may be an example of a controlapparatus.

FIG. 5 schematically shows an example of an internal configuration ofthe transfer control unit 436. In the present embodiment, the transfercontrol unit 436 can include an image analyzing unit 520, a trajectorypath planning unit 530, an algorithm determining unit 542, anabnormality detecting unit 544, a changing unit 546, a control signaloutput unit 552, and a warning information output unit 554. In thepresent embodiment, the image analyzing unit 520 can include a transporttarget specifying unit 522 and a grip state determining unit 524.

In the present embodiment, the image analyzing unit 520 can receive theimage data from the image data acquiring unit 422. For example, theimage analyzing unit 520 can acquire the image data of an image obtainedby the image capturing apparatus 160 capturing images, from above, ofone or more packages 102 arranged on the depalletizing platform 110. Theimage analyzing unit 520 can analyze this image data. The imageanalyzing unit 520 can output information representing the analysisresults to the trajectory path planning unit 530 and the abnormalitydetecting unit 544, for example.

In the present embodiment, the transport target specifying unit 522 cananalyze the image and specifies a package 102 to be the target of thetransport process, from among one or more packages 102 included in theimage. For example, the transport target specifying unit 522 can extracta border (sometimes referred to as an edge) between two packages 102from the image, and estimate the contour of each of one or more packages102 included in the image. The transport target specifying unit 522 canextract a region that matches the feature of the outer appearance of apackage 102 that is already registered, from the image, and estimate thetype of each of one or more packages 102 included in the image.

In a case where there is a package 102 for which both the contour andthe type have been recognized using the above process, the transporttarget specifying unit 522 can select one of these one or more packagesfor which the contour and type have been recognized, as the target ofthe transport process. The transport target specifying unit 522 maystore, in the workpiece information storage unit 454, identificationinformation of a product or service corresponding to the package 102(sometimes referred to as a workpiece) selected as the target of thetransport process.

In a case where there is a package 102 for which the contour has beenrecognized using the above process but there is no package 102 for whichboth the contour and the type have been recognized, the transport targetspecifying unit 522 may select one of the one or more packages for whichthe contour has been recognized using the above process, as the targetof the transport process. The transport target specifying unit 522 maystore, in the workpiece information storage unit 454, informationrepresenting a position of the package 102 (sometimes referred to as aworkpiece) selected as the target of the transport process. For example,the transport target specifying unit 522 can store, in the workpieceinformation storage unit 454, information representing the relativepositions of a reference point of the workpiece and a reference point ofthe depalletizing platform 110.

In the present embodiment, the transport target specifying unit 522 mayaccess the product information storage unit 452 and acquire thecharacteristic of a package that matches the feature of the outerappearance of the workpiece. In this way, the transport targetspecifying unit 522 can estimate various characteristics relating to theworkpiece, based on the image data described above. For example, thetransport target specifying unit 522 can estimate at least one of thedimensions, shape, mass, and position of the center of mass of theworkpiece. The transport target specifying unit 522 may store, in theworkpiece information storage unit 454, the information representingvarious characteristics relating to the workpiece that have beenestimated.

In the present embodiment, the transport target specifying unit 522 mayspecify the position of a geometric center of the top surface of theworkpiece, based on the image data described above. The transport targetspecifying unit 522 may store, in the workpiece information storage unit454, information representing the specified position of the geometriccenter.

In the present embodiment, the grip state determining unit 524 candetermine the grip position at which the workpiece is gripped by the endeffector 140. For example, the grip state determining unit 524 candetermine a positional relationship between a reference point of the endeffector 140 and a reference point of the workpiece. The grip statedetermining unit 524 may store, in the workpiece information storageunit 454, information representing the grip position at which theworkpiece is gripped by the end effector 140.

The grip state determining unit 524 may make a determination to grip theworkpiece with the end effector 140 such that the center of the endeffector 140 and the center of mass of the workpiece match. On the otherhand, in a case where there is not enough space around the workpiece andthe end effector 140 cannot be arranged such that the center of the endeffector 140 matches the center of mass of the workpiece, the grip statedetermining unit 524 may judge whether it is possible to arrange the endeffector 140 around the workpiece. For example, the grip statedetermining unit 524 may judge whether it is possible to arrange the endeffector 140 around the workpiece by using a three-dimensional model ofthe end effector 140 and the robot arm 132 and a three-dimensional modelof one or more packages 102 mounted on the depalletizing platform 110.

If the end effector 140 can be arranged around the workpiece, the gripstate determining unit 524 may determine the grip position at which theworkpiece is gripped by the end effector 140 based on the position andposture of the end effector 140 at this time. On the other hand, if theend effector 140 cannot be arranged around the workpiece, the grip statedetermining unit 524 may make a request to the transport targetspecifying unit 522 to select another package 102 as the workpiece.

The grip state determining unit 524 may determine the grip strength tobe applied to the workpiece by the end effector 140. For example, thegrip state determining unit 524 may determine the grip strength to beapplied to the workpiece by the end effector 140 based on the gripposition at which the workpiece is gripped by the end effector 140 andthe arrangement of the adhesion pad 320 on the end effector 140.

In the present embodiment, the trajectory path planning unit 530 canplan at least one of a trajectory path of the distal end of the robotarm 132 and a trajectory path of the end effector 140. The trajectorypath planning unit 530 can output information representing the contentof the plan relating to the trajectory path described above (sometimesreferred to as plan information) to at least one of the algorithmdetermining unit 542, the abnormality detecting unit 544, the changingunit 546, and the control signal output unit 552, for example. Thetrajectory path planning unit 530 may store the plan information in theworkpiece information storage unit 454. The plan information may includeinformation representing a plurality of elapsed times from when theworkpiece passes a reference position in the trajectory path andinformation representing the angle of each of the plurality of jointsincluded in the robot arm 132 at each elapsed time.

As an example, the trajectory path planning unit 530 can access theworkpiece information storage unit 454 and acquires at least one of theinformation representing the position of the workpiece, the informationrepresenting various characteristics relating to the workpiece, theinformation representing the grip position of the workpiece, and theinformation indicating the grip strength of the workpiece. Furthermore,the trajectory path planning unit 530 can access the model informationstorage unit 456 and acquires the three-dimensional model of the robot130 and the three-dimensional models of one or more packages 102 mountedon the depalletizing platform 110. The trajectory path planning unit 530can access the setting information storage unit 458 and acquires varioustypes of information relating to the settings of the robot 130. Thetrajectory path planning unit 530 can plan the trajectory path 600described above using the information described above.

In the present embodiment, the algorithm determining unit 542 candetermine an algorithm to be used by the abnormality detecting unit 544to detect abnormalities. The algorithm determining unit 542 can outputinformation relating to the determined algorithm to the abnormalitydetecting unit 544.

In one embodiment, the algorithm determining unit 542 can determine thealgorithm described above for each step included in the transportprocess. As described above, the transport process can include thedrawing near step, the gripping step, the lifting step, the movementstep, the placement step, and the release step, for example. In anotherembodiment, the algorithm determining unit 542 can acquire the planinformation from the trajectory path planning unit 530 and divides thetrajectory path into a plurality of segments. The algorithm determiningunit 542 may divide the trajectory path into the plurality of segmentsbased on at least one of the magnitude of the transport velocity, themagnitude of the transport acceleration, and the amount of fluctuationin the transport acceleration. The algorithm determining unit 542 maydivide the trajectory path into the plurality of segments based on atleast one of the magnitude of the transport velocity in a substantiallyhorizontal direction, the magnitude of the transport acceleration in thesubstantially horizontal direction, and the amount of fluctuation in thetransport acceleration in the substantially horizontal direction. Thealgorithm determining unit 542 may determine the algorithm describedabove for each segment.

In the present embodiment, the abnormality detecting unit 544 can detectabnormalities relating to the transport of the workpiece. The details ofthe abnormality detecting unit 544 are described further below.

In the present embodiment, when the abnormality detecting unit 544 hasdetected an abnormality relating to the transport of the workpiece, thechanging unit 546 can change various settings relating to the transportof this workpiece. The details of the changing unit 546 are describedfurther below.

In the present embodiment, the control signal output unit 552 canacquire the plan information from the trajectory path planning unit 530.The transport target specifying unit 522 can generate a control signalfor controlling the operation of the robot 130, based on the planinformation. The transport target specifying unit 522 can transmit thegenerated control signal to the drive control unit 134.

When change information is acquired from the changing unit 546, thecontrol signal output unit 552 can generate the control signal forcontrolling the operation of the robot 130, based on this changeinformation. The control signal output unit 552 can transmit thegenerated control signal to the drive control unit 134.

In the present embodiment, when the abnormality detecting unit 544 hasdetected an abnormality relating to the transport of the workpiece, thewarning information output unit 554 can provide a message indicatingthat an abnormality has been detected to an operator of the transfercontrol apparatus 150. Examples of an output aspect of this message caninclude output of a message screen, output of an audio message, and thelike.

The image analyzing unit 520 may be an example of an image informationacquiring unit. The transport target specifying unit 522 may be anexample of an image information acquiring unit, a mass informationacquiring unit, a center of mass estimating unit, and a geometric centeridentifying unit. The grip state determining unit 524 may be an exampleof an image information acquiring unit and a grip position determiningunit. The abnormality detecting unit 544 may be an example of a controlapparatus. The changing unit 546 may be an example of an adjusting unit.A value of the mass of a package stored in the product informationstorage unit 452 may be an example of a predetermined value serving asthe mass of a target item.

FIG. 6 schematically shows an example of a trajectory path of thegripping member 246. In the present embodiment, the trajectory path 600is divided into segment A, segment B, segment C, and segment D.Furthermore, segment C is divided into segment Cm that has a relativelysmall acceleration fluctuation and segment Ch that has a relativelylarge acceleration fluctuation. Segment A may be a trajectory path alongwhich the end effector 140 moves from the standby position 610 to thegrip position 620. Segment B may be a trajectory path along which theend effector 140 moves from the grip position 620 to the transportpreparation position 622. Segment C may be a trajectory path along whichthe end effector 140 moves from the transport preparation position 622to the placement preparation position 624. Segment D may be a trajectorypath along which the end effector 140 moves from the placementpreparation position 624 to the release position 630.

FIG. 7 schematically shows an example of an internal configuration ofthe abnormality detecting unit 544. In the present embodiment, theabnormality detecting unit 544 can include a registration data comparingunit 720, an output simulator 730, an estimation data comparing unit740, a reference data comparing unit 750, a mass abnormality detectingunit 762, a center of mass abnormality detecting unit 764, and anabnormality specifying unit 770.

[Comparison of the Registration Data]

The registration data comparing unit 720 can compare the informationrelating to a characteristic of a package registered in the productinformation storage unit 452 to the information relating to acharacteristic of the workpiece to be determined based on the actualmeasured data relating to the workpiece. Examples of the actual measureddata relating to the workpiece can include the data output by the forcesensation sensor 242 and the like. This measured data may be data outputby the force sensation sensor 242 during an interval in which the endeffector 140 grips and lifts up the workpiece. The registration datacomparing unit 720 can output information representing the comparisonresult to at least one of the mass abnormality detecting unit 762 andthe center of mass abnormality detecting unit 764, for example.

[Comparison of Mass]

In one embodiment, the characteristic described above may be the mass.For example, the registration data comparing unit 720 can access theworkpiece information storage unit 454 and acquire the identificationinformation of the product or service corresponding to the workpiece.The registration data comparing unit 720 can access the productinformation storage unit 452 and acquire information representing themass of a package that matches the identification information of theproduct or service described above (sometimes referred to as the packagecorresponding to the workpiece). Next, when the end effector 140 gripsthe workpiece and lifts up this workpiece, the registration datacomparing unit 720 can acquire the force sensation information from thehand information acquiring unit 426 while the end effector 140 grips andlifts up the workpiece.

The registration data comparing unit 720 can determine the mass of theworkpiece based on the magnitude of at least one of the force and thetorque represented by the force sensation information. The registrationdata comparing unit 720 may determine the mass of the workpiece by usingdata in an interval during which the movement velocity of the workpieceis less than a predetermined value. The registration data comparing unit720 may determine the mass of the workpiece by using data in an intervalduring which the movement of the workpiece is substantially stopped.

The registration data comparing unit 720 can compare the mass of thepackage registered in the product information storage unit 452 to themass of the workpiece determined based on the force sensationinformation described above. The registration data comparing unit 720may calculate the absolute value of the difference between the mass ofthe package registered in the product information storage unit 452 andthe mass of the workpiece determined based on the force sensationinformation described above. The registration data comparing unit 720may output information representing the absolute value of thisdifference as the information representing the comparison result.

[Comparison of the Position of the Center of Mass]

In another embodiment, the characteristic described above may be theposition of the center of mass. For example, in a similar manner as inthe embodiment described above, the registration data comparing unit 720can acquire the information representing the position of the center ofmass of the package corresponding to the workpiece. Furthermore, in asimilar manner as in the embodiment described above, the registrationdata comparing unit 720 can determine the position of the center of massof the workpiece based on the magnitude of at least one of the force andthe torque represented by the force sensation information.

The registration data comparing unit 720 can compare the position of thecenter of mass of the package registered in the product informationstorage unit 452 to the position of the center of mass of the workpiecedetermined based on the force sensation information described above. Theregistration data comparing unit 720 may calculate the distance betweenthe position of the center of mass of the package registered in theproduct information storage unit 452 and the position of the center ofmass of the workpiece determined based on the force sensationinformation described above. The registration data comparing unit 720may output information representing this distance as the informationrepresenting the comparison result.

[Simulation of the Output of the Force Sensation Sensor 242]

In the present embodiment, the output simulator 730 can simulate theoutput of at least one of the one or more sensors arranged on the robot130. In one embodiment, the output simulator 730 can simulate the outputof the force sensation sensor 242. In another embodiment, the outputsimulator 730 can simulate the output of the encoder 234. In yet anotherembodiment, the output simulator 730 can simulate a current value of themotor 232.

While the robot 130 is transporting the workpiece, the force sensationsensor 242 can detect the combined force of the gravitational forceacting on the workpiece and the inertial force acting on the workpiece.Therefore, in order to accurately detect abnormalities relating to thetransport of the workpiece using the output of the force sensationsensor 242, it is preferable to cancel out the effect of this inertialforce using some kind of technique.

A technique that is considered for cancelling out the effect of thisinertial force can include (i) differentiating the output of the encoder234 twice to calculate the acceleration of the workpiece, (ii)calculating the inertial force acting on the workpiece based on thisacceleration, (iii) and subtracting the magnitude of the inertial forcefrom the magnitude of the force represented by the output of the forcesensation sensor 242. However, due to the effect of a filter process andthe like within the robot 130, even when the output of the encoder 234is differentiated twice, it is extremely difficult to accuratelycalculate the acceleration of the workpiece.

Another technique that is considered for cancelling out the effect ofthis inertial force can include (i) estimating the output of the forcesensation sensor 242 through a simulation and (ii) comparing theestimated value of the output of the force sensation sensor 242 to theactual output of the force sensation sensor 242. According to thistechnique, it is possible to easily improve the abnormality detectionaccuracy by adjusting the timing for synchronizing the estimated valueof the output of the force sensation sensor 242 and the actual output ofthe force sensation sensor 242 and adjusting the threshold value usedwhen detecting an abnormality based on the difference between theestimated value of the output of the force sensation sensor 242 and theactual output of the force sensation sensor 242.

[Simulation Based on the Plan Information]

In the present embodiment, the output simulator 730 can simulate theoutput of the force sensation sensor 242, based on the plan information.For example, the output simulator 730 can access the product informationstorage unit 452 and acquire the information representing the mass ofthe package corresponding to the workpiece. Furthermore, as an example,the output simulator 730 can access the workpiece information storageunit 454 and acquire the plan information relating to the workpiece.Next, the output simulator 730 can estimate the magnitude of at leastone of the force and the torque to be detected by the force sensationsensor 242 when the robot 130 transports the work piece, based on theinformation representing the mass described above and the planinformation. In this way, the magnitude of at least one of the force andthe torque that would be detected by the force sensation sensor 242 whenthe robot 130 transports the workpiece can be estimated. The outputsimulator 730 may estimate the magnitude and the direction of at leastone of the force and torque to be detected by the force sensation sensor242. In this way, the magnitude and direction of at least one of theforce and the torque that would be detected by the force sensationsensor 242 can be estimated.

As described above, the plan information can include information inwhich information representing a plurality of elapsed times from whenthe workpiece passes the reference position in the trajectory path andinformation representing the angle of each of the plurality of jointsincluded in the robot arm 132 at each elapsed time are associated witheach other. In this case, the output simulator 730 may estimate themagnitude of at least one of the force and the torque to be detected bythe force sensation sensor 242 at each of the plurality of elapsedtimes, based on the plan information. In this way, the magnitude of atleast one of the force and the torque that would be detected by theforce sensation sensor 242 can be estimated. Furthermore, the outputsimulator 730 may output information in which each of the plurality ofelapsed times and the estimated magnitude of at least one of the forceand the torque are associated with each other (sometimes referred to asestimation information). The estimation information may be informationin which each of the plurality of elapsed times and the estimatedmagnitude and direction of at least one of the force and the torque areassociated with each other.

In the case described above, the output simulator 730 may (i) determinethe angle of each of the plurality of joints at each of a plurality ofpositions in the trajectory path, based on the plan information, and(ii) estimate the magnitude of at least one of the force and the torqueto be detected by the force sensation sensor 242, at each of theplurality of positions in the trajectory path. In this way, themagnitude of at least one of the force and the torque that would bedetected by the force sensation sensor 242, at each of the plurality ofpositions in the trajectory path, can be estimated. Furthermore, theoutput simulator 730 may output the estimation information in which theangle of each of the plurality of joints and the estimated magnitude ofat least one of the force and the torque are associated with each other.The estimation information may be information in which the angle of eachof the plurality of joints and the estimated magnitude and direction ofat least one of the force and the torque are associated with each other.

[Simulation of the Lifting Step]

In the present embodiment, the output simulator 730 can simulate theoutput of the force sensation sensor 242 in the lifting step. Forexample, the output simulator 730 can access the product informationstorage unit 452 and acquire the information representing the mass ofthe package corresponding to the workpiece and the informationrepresenting the position of the center of mass of this package.Furthermore, as an example, the output simulator 730 can access theworkpiece information storage unit 454 and acquire the informationrelating to the grip position of the workpiece. Next, the outputsimulator 730 can estimate the magnitude of at least one of the forceand the torque to be detected by the force sensation sensor 242 when theend effector 140 grips the workpiece at the grip position and lifts upthis workpiece, based on the mass described above, the position of thecenter of mass described above, and the grip position described above.In this way, the magnitude of at least one of the force and the torquethat would be detected by the force sensation sensor 242 in the casedescribed above can be estimated. The output simulator 730 may estimatethe magnitude and direction of at least one of the force and the torqueto be detected by the force sensation sensor 242. In this way, themagnitude and direction of at least one of the force and the torque thatwould be detected by the force sensation sensor 242 can be estimated.The output simulator 730 may output the estimation information in thesame manner as in the embodiment described above.

In the present embodiment, the estimation data comparing unit 740 cancompare the estimated value of the force sensation sensor 242 output bythe output simulator 730 to the value actually output by the forcesensation sensor 242. The estimation data comparing unit 740 can outputthe information representing the comparison result to at least one ofthe mass abnormality detecting unit 762 and the center of massabnormality detecting unit 764, for example.

(Comparison of Mass)

As an example, the estimation data comparing unit 740 can acquire theforce sensation information from the hand information acquiring unit426. The estimation data comparing unit 740 can acquire the estimationinformation from the output simulator 730. The estimation data comparingunit 740 can compare the magnitude of at least one of the force and thetorque represented by the force sensation information to the magnitudeof the at least one of the force and the torque represented by theestimation information. The estimation data comparing unit 740 maycalculate the absolute value of the difference between the magnitude ofat least one of the force and the torque represented by the forcesensation information and the magnitude of the at least one of the forceand the torque represented by the estimation information. The estimationdata comparing unit 740 may output the information representing theabsolute value of this difference as the information representing thecomparison result.

[Comparison of the Position of the Center of Mass]

The estimation data comparing unit 740 may specify the position of thecenter of mass of the workpiece, based on the force sensationinformation. Furthermore, the estimation data comparing unit 740 mayestimate the position of the center of mass of the workpiece based onthe estimation information. The estimation data comparing unit 740 cancompare the position of the center of mass of the workpiece specifiedbased on the force sensation information to the position of the centerof mass of the workpiece estimated based on the estimation information.The estimation data comparing unit 740 may calculate the distancebetween the position of the center of mass of the workpiece specifiedbased on the force sensation information and the position of the centerof mass of the workpiece estimated based on the estimation information.The estimation data comparing unit 740 may output the informationrepresenting this distance as the information representing thecomparison result.

[Data Synchronization]

In one embodiment, the estimation data comparing unit 740 may associatethe information representing at least one of the force and the torqueincluded in the force sensation information and the informationrepresenting the magnitude of the at least one of the force and thetorque included in the estimation information with each other, based onthe information representing a plurality of timings included in theforce sensation information and the information representing each of theplurality of elapsed times included in the estimation information. Inthis way, these pieces of information can be synchronized.

In another embodiment, the estimation data comparing unit 740 mayassociate the information representing the angle of each of theplurality of joints and the information representing the magnitude of atleast one of the force and the torque at the distal end, based on theinformation representing the plurality of timings included in each ofthe angle information and the force sensation information. Furthermore,the estimation data comparing unit 740 may associate the informationrepresenting the magnitude of at least one of the force and the torqueincluded in the force sensation information and the informationrepresenting the magnitude of the at least one of the force and thetorque included in the estimation information with each other, based onthe information representing the angle of each of the plurality ofjoints. In this way, these pieces of information can be associated witheach other.

[Comparison to the Reference Data]

In the present embodiment, the reference data comparing unit 750 cancompare the output of the force sensation sensor 242 at a referencetiming to the current output of the force sensation sensor 242, withthis reference timing being a specified timing or a specified timing ina specified step. Examples of this reference timing can include thestart of the lifting step, the start of the placement step, and thelike. The reference data comparing unit 750 can compare the magnitude ofat least one of the force and the torque represented by the forcesensation information at the reference timing to the magnitude of the atleast one of the force and the torque represented by the current forcesensation information. The reference data comparing unit 750 maycalculate the absolute value of a difference between the magnitude of atleast one of the force and the torque represented by the force sensationinformation at the reference timing and the magnitude of the at leastone of the force and the torque represented by the current forcesensation information. The reference data comparing unit 750 may outputinformation representing the absolute value of this difference as theinformation representing the comparison result.

[Detection of Abnormalities Relating to the Mass]

In the present embodiment, the mass abnormality detecting unit 762 candetect an abnormality relating to the mass of the workpiece. The massabnormality detecting unit 762 may detect this abnormality based on aplurality of algorithms. The mass abnormality detecting unit 762 maydetect this abnormality based on an algorithm determined by thealgorithm determining unit 542.

In one embodiment, the mass abnormality detecting unit 762 can detectthe abnormality based on the comparison result of the registration datacomparing unit 720. For example, the mass abnormality detecting unit 762can detect that there is an abnormality if the absolute value of thedifference between the two values compared by the registration datacomparing unit 720 is greater than a predetermined threshold value (thisthreshold value may be an example of a fourth threshold value). Examplesof the causes of this abnormality can include at least one of failure toidentify the workpiece, failure to grip the workpiece, and damage of theworkpiece.

In another embodiment, the mass abnormality detecting unit 762 candetect the abnormality based on the comparison result of the estimationdata comparing unit 740. For example, the mass abnormality detectingunit 762 can detect that there is an abnormality if the absolute valueof the difference between the two values compared by the estimation datacomparing unit 740 is greater than a predetermined threshold value (thisthreshold value may be an example of a first threshold value). Thisfirst threshold value can be determined to be greater as the length ofthe delay time until the transfer control apparatus 150 acquires theforce sensation information becomes longer, for example. This firstthreshold value may be determined such that the first threshold value ina case where the fluctuation width of the delay described above isgreater than a predetermined value is greater than the first thresholdvalue in a case where the fluctuation width of the delay described aboveis less than the predetermined value.

The mass abnormality detecting unit 762 may detect that there is anabnormality if the length of a continuous time period of a state inwhich the absolute value of the difference between the two valuescompared by the estimation data comparing unit 740 is greater than apredetermined threshold value (this threshold value may be an example ofa first threshold value) is longer than a predetermined threshold value(this threshold value may be an example of a second threshold value).Intervals do not need to be provided in this continuous time period, butintervals of time periods shorter than a predetermined length may beprovided in this continuous time period.

In this way, the mass abnormality detecting unit 762 can detect anabnormality relating to the transport of the workpiece, based on themagnitude of at least one of the force and the torque represented by theforce sensation information and the magnitude of the at least one of theforce and the torque estimated by the output simulator 730. The massabnormality detecting unit 762 may detect the abnormality relating tothe transport of the workpiece based on the magnitude and the directionof at least one of the force and the torque represented by the forcesensation information and the magnitude and the direction of the atleast one of the force and the torque estimated by the output simulator730.

As described above, the force sensation information and the estimationinformation can be synchronized using a suitable technique. In this way,the mass abnormality detecting unit 762 can detect an abnormalityrelating to the transport of the workpiece based on the magnitude of atleast one of the force and the torque represented by force sensationinformation and the magnitude of the at least one of the force and thetorque estimated by the output simulator 730, which are associated witheach other.

In yet another embodiment, the mass abnormality detecting unit 762 candetect an abnormality based on the comparison result of the referencedata comparing unit 750. For example, the mass abnormality detectingunit 762 can detect that there is an abnormality if the absolute valueof the difference between the two values compared by the reference datacomparing unit 750 is greater than a predetermined threshold value.

[Detection of Abnormalities Relating to the Position of the Center ofMass]

In the present embodiment, the center of mass abnormality detecting unit764 can detect an abnormality relating to the position of the center ofmass of the workpiece. The center of mass abnormality detecting unit 764may detect this abnormality based on a plurality of algorithms. Thecenter of mass abnormality detecting unit 764 may detect thisabnormality based on the algorithm determined by the algorithmdetermining unit 542.

In one embodiment, the center of mass abnormality detecting unit 764 candetect the abnormality based on the comparison result of theregistration data comparing unit 720. For example, the center of massabnormality detecting unit 764 can detect that there is an abnormalityif the distance between the positions of the two centers of masscompared by the registration data comparing unit 720 is greater than apredetermined value. Examples of the causes of this abnormality caninclude at least one of failure to identify the workpiece, failure togrip the workpiece, and damage of the workpiece.

In another embodiment, the center of mass abnormality detecting unit 764can detect an abnormality based on the comparison result of theestimation data comparing unit 740. For example, the center of massabnormality detecting unit 764 can detect that there is an abnormalityif the distance between the positions of the two centers of masscompared by the estimation data comparing unit 740 is greater than apredetermined value.

In yet another embodiment, the center of mass abnormality detecting unit764 can detect an abnormality based on a comparison result of thereference data comparing unit 750. For example, the center of massabnormality detecting unit 764 can detect that there is an abnormalityif the distance between the positions of the two centers of masscompared by the reference data comparing unit 750 is greater than apredetermined threshold value.

In yet another embodiment, the center of mass abnormality detecting unit764 can detect an abnormality based on the analysis results of the imageanalyzing unit 520 and the output of the output simulator 730. Forexample, the center of mass abnormality detecting unit 764 can acquirethe information representing the geometric center specified by thetransport target specifying unit 522 of the image analyzing unit 520.Furthermore, the center of mass abnormality detecting unit 764 canspecify the position of the center of mass of the workpiece based on theestimation information output by the output simulator 730. The center ofmass abnormality detecting unit 764 can detect that there is anabnormality if the distance between the position of the geometric centerdescribed above and the position at which the center of the workpiecedescribed above is projected onto the top surface of the target item isgreater than a predetermined threshold value (this threshold value maybe an example of a third threshold value). Examples of the causes ofthis abnormality can include at least one of failure to identify theworkpiece, failure to grip the workpiece, and damage of the workpiece.

[Specification of the Content of the Abnormality]

In the present embodiment, the abnormality specifying unit 770 canspecify the content of the detected abnormality. The abnormalityspecifying unit 770 can acquire information representing that anabnormality relating to the mass has been detected, from the massabnormality detecting unit 762. In this way, the abnormality specifyingunit 770 can judge whether there is an abnormality relating to the mass.Similarly, the abnormality specifying unit 770 can acquire informationrepresenting that an abnormality relating to the position of the centerof mass has been detected, from the center of mass abnormality detectingunit 764. The abnormality specifying unit 770 can judge whether there isan abnormality relating to the position of the center of mass.

Furthermore, the abnormality specifying unit 770 may acquire informationrepresenting the state of the robot arm 132 from the arm informationacquiring unit 424. The abnormality specifying unit 770 may acquire theinformation representing the state of the end effector 140 from the handinformation acquiring unit 426.

The abnormality specifying unit 770 may specify the content of thedetected abnormality based on these pieces of information. In this way,the abnormality specifying unit 770 can detect at least one of failureto identify the workpiece, failure to grip the workpiece, and damage ofthe workpiece, based on the magnitude of at least one of the force andthe torque represented by the force sensation information and themagnitude of the at least one of the force and the torque estimated bythe output simulator 730.

In one embodiment, the abnormality specifying unit 770 may detect thatthere is at least one of failure to identify the workpiece, failure togrip the workpiece, and damage of the workpiece if at least one of themass abnormality detecting unit 762 and the center of mass abnormalitydetecting unit 764 has detected an abnormality based on the comparisonresult of the registration data comparing unit 720. Similarly, theabnormality specifying unit 770 may detect that there is at least one offailure to identify the workpiece, failure to grip the workpiece, anddamage of the workpiece if at least one of the mass abnormalitydetecting unit 762 and the center of mass abnormality detecting unit 764has detected an abnormality based on the comparison result of theestimation data comparing unit 740. The abnormality specifying unit 770may detect that there is at least one of failure to identify theworkpiece, failure to grip the workpiece, and damage of the workpiece ifat least one of the mass abnormality detecting unit 762 and the centerof mass abnormality detecting unit 764 has detected an abnormality basedon the comparison result of the reference data comparing unit 750.

In another embodiment, the abnormality specifying unit 770 can acquirethe depressurization information from the arm information acquiring unit424. Furthermore, the abnormality specifying unit 770 can detect thatthere is an abnormality in the pressure of the depressurization chamber312 if the pressure represented by the depressurization information isless than a predetermined value. The abnormality specifying unit 770 candetect that the workpiece is damaged if (i) an abnormality in thepressure of the depressurization chamber 312 is not detected and themass abnormality detecting unit 762 does not detect an abnormality and(ii) the center of mass abnormality detecting unit 764 detects thatthere is an abnormality.

In another embodiment, the abnormality specifying unit 770 can acquirethe depressurization information from the arm information acquiring unit424. Furthermore, the abnormality specifying unit 770 may detect thatthere is an abnormality in the pressure of the depressurization chamber312 if the pressure represented by the depressurization information isless than a predetermined value. The abnormality specifying unit 770 maydetect that the workpiece is damaged if (i) an abnormality in thepressure of the depressurization chamber 312 is not detected and (ii)the mass abnormality detecting unit 762 detects that there is anabnormality.

As an example, in recent years, there are cases where a portion of apackage in which a plurality of products are packaged is divided and theproducts are displayed in a store while contained in the package, inorder to simplify the display of the products. In consideration of sucha usage state, packages formed to have portions that can be separatedeasily are sold commercially.

When the robot 130 transfers such a package, it is conceivable for thispackage to be separated into top and bottom portions during thetransport of the package or for a portion of the package to be broken tosignificantly deform the package. In such a case, this package can betransported while the top portion of the divided or broken package isgripped by the end effector 140. Therefore, even when a portion of thepackage is separated or broken, the pressure fluctuation of thedepressurization chamber 312 is relatively small, and it is difficult todetect damage of the workpiece based on the pressure fluctuation of thedepressurization chamber 312. However, according to the presentembodiment, it is possible to detect damage of the workpiece even insuch a case.

In yet another embodiment, the abnormality specifying unit 770 canacquire the force sensation information from the hand informationacquiring unit 426. The abnormality specifying unit 770 may judgewhether the end effector 140 is excessively pressing the workpiece,based on the magnitude of the force represented by the force sensationinformation. For example, the abnormality specifying unit 770 may judgethat the end effector 140 is excessively pressing the workpiece if,during a time period in which at least one of the gripping step, theplacement step, and the release step is performed, the magnitude of theforce represented by the force sensation information is greater than apredetermined value.

In yet another embodiment, the abnormality specifying unit 770 may judgethat the robot 130 is simultaneously lifting up a plurality of packages102, if the position of the geometric center of the top surface of theworkpiece specified by the transport target specifying unit 522 and theposition of the center of mass of the workpiece determined based on theforce sensation information satisfy a predetermined condition. Thispredetermined condition may be a condition that the distance between theposition of the geometric center described above and the position atwhich the center of mass of the workpiece described above is projectedonto the top surface of the target item is greater than a predeterminedthreshold value (this threshold value may be an example of a thirdthreshold value).

The abnormality detecting unit 544 may be an example of a firstdetecting unit, a second detecting unit, and a third detecting unit. Theregistration data comparing unit 720 may be an example of a massinformation acquiring unit and a center of mass identifying unit. Theoutput simulator 730 may be an example of a mass information acquiringunit, a plan information acquiring unit, and a force sensationestimating unit. The mass abnormality detecting unit 762 may be anexample of a first detecting unit. The center of mass abnormalitydetecting unit 764 may be an example of a second detecting unit and athird detecting unit. The magnitude of at least one of the force and thetorque detected by the force sensation sensor 242 may be an example ofthe magnitude of the at least one of the force and the torque detectedat the distal end of the manipulator. The abnormality relating to themass detected by the mass abnormality detecting unit 762 may be anexample of an abnormality relating to the mass of a target itemrepresented by the force sensation information. The abnormality relatingto the center of mass detected by the center of mass abnormalitydetecting unit 764 may be an example of an abnormality relating to thecenter of mass of a target item represented by the force sensationinformation. The abnormality in the pressure of the depressurizationchamber 312 may be an example of an abnormality relating to the pressurerepresented by the depressurization information.

In the present embodiment, the details of the abnormality detecting unit544 are described using an example of a case in which the massabnormality detecting unit 762 detects an abnormality relating to themass and the center of mass abnormality detecting unit 764 detects anabnormality relating to the position of the center of mass. However, theabnormality detecting unit 544 is not limited to the present embodiment.In another embodiment, the registration data comparing unit 720 maydetect these abnormalities. In yet another embodiment, the estimationdata comparing unit 740 may detect these abnormalities. In yet anotherembodiment, the reference data comparing unit 750 may detect theseabnormalities.

FIG. 8 schematically shows an example of an internal configuration ofthe changing unit 546. In the present embodiment, the changing unit 546can include a registration information changing unit 820, a settingvelocity changing unit 830, and a stop judging unit 840.

In the present embodiment, if the mass abnormality detecting unit 762has detected an abnormality based on the comparison result of theregistration data comparing unit 720, the registration informationchanging unit 820 can determine whether to update the informationrelating to the mass of the package corresponding to the workpiecestored in the product information storage unit 452. For example, if themass of the workpiece specified based on the force sensation informationis greater than the mass of the package corresponding to the workpiecestored in the product information storage unit 452, the registrationinformation changing unit 820 can make a determination to update theinformation in the product information storage unit 452.

If the center of mass abnormality detecting unit 764 has detected anabnormality based on the comparison result of the registration datacomparing unit 720, the registration information changing unit 820 maydetermine whether to update the position of the center of mass of thepackage corresponding to the workpiece stored in the product informationstorage unit 452. For example, if an abnormality relating to theposition of the center of mass of the workpiece specified based on theforce sensation information has been detected, the registrationinformation changing unit 820 can make a determination to update theinformation in the product information storage unit 452.

If the center of mass abnormality detecting unit 764 has detected anabnormality based on the comparison result of the registration datacomparing unit 720, when the position of the geometric center of the topsurface of the workpiece specified by the transport target specifyingunit 522 and the position of the center of mass of the workpiecedetermined based on the force sensation information satisfy apredetermined condition, the registration information changing unit 820may determine whether to update the grip position of the packagecorresponding to the workpiece stored in the product information storageunit 452. This condition may be a condition that the distance betweenthe position of the geometric center described above and the position atwhich the center of the mass of the workpiece described above isprojected onto the top surface of the target item is greater than apredetermined threshold value (this threshold value may be an example ofa third threshold value).

As an example, the registration information changing unit 820 cananalyze the image of the workpiece and judge whether the robot 130 issimultaneously lifting up a plurality of packages 102. If it is judgedthat the robot 130 is simultaneously lifting up a plurality of packages102, the registration information changing unit 820 can outputinformation representing this judgment result, for example, to the stopjudging unit 840. On the other hand, if it is judged that the robot 130is not simultaneously lifting up a plurality of packages 102, theregistration information changing unit 820 can make a determination toupdate the grip position of the package corresponding to the workpiecestored in the product information storage unit 452. The registrationinformation changing unit 820 may register a more suitable position,which is a position different from the current grip position, in theproduct information storage unit 452 as a new grip position.

In the present embodiment, if at least one of the mass abnormalitydetecting unit 762 and the center of mass abnormality detecting unit 764has detected an abnormality, the setting velocity changing unit 830 candetermine whether to adjust the transport velocity of the workpiecerepresented by the plan information. Furthermore, if a determination ismade to adjust the transport velocity of the workpiece, the settingvelocity changing unit 830 can output information relating to a changeof the transport velocity (sometimes referred to as change information)to the control signal output unit 552.

In one embodiment, the setting velocity changing unit 830 can simulatethe output of the force sensation sensor 242 in a case where it isassumed that the plan represented by the plan information is to becontinued, using the output simulator 730, for example. The settingvelocity changing unit 830 can judge whether dropping or damage of theworkpiece would occur if the plan represented by the plan information iscontinued, based on at least one of a result of the simulation performedby the output simulator 730, an upper limit value of the transportablemass of the end effector 140, and an upper limit value of the durabilityof the workpiece.

If it is judged that dropping or damage of the workpiece would occur,the setting velocity changing unit 830 may output informationrepresenting this judgment result to the stop judging unit 840. On theother hand, if it is judged that dropping or damage of the workpiecewould not occur, the setting velocity changing unit 830 can make adetermination to adjust the transport velocity of the workpiece. Thesetting velocity changing unit 830 may adjust the transport velocity ofthe workpiece such that the transport velocity of the workpiece afterthe adjustment is less than the transport velocity represented by theplan information.

In another embodiment, if the abnormality specifying unit 770 hasdetected a specified type of abnormality, the setting velocity changingunit 830 may make a determination to adjust the transport velocity ofthe workpiece represented by the plan information. In yet anotherembodiment, if the abnormality specifying unit 770 has not detected aspecified type of abnormality, the setting velocity changing unit 830may make a determination to adjust the transport velocity of theworkpiece represented by the plan information.

In the present embodiment, the stop judging unit 840 can judge whetherto stop the transport of the workpiece. Furthermore, if a determinationis made to stop the transport of the workpiece, the stop judging unit840 can output information representing the stoppage of the transport ofthe workpiece to the warning information output unit 554.

In one embodiment, if the stop judging unit 840 has acquired informationfrom the registration information changing unit 820 representing thatthe robot 130 is simultaneously lifting up a plurality of packages 102,the stop judging unit 840 can make a determination to stop the transportof the workpiece. In another embodiment, if the stop judging unit 840has acquired information from the setting velocity changing unit 830representing that dropping or damage of the workpiece would occur whenthe plan represented by the plan information is continued, the stopjudging unit 840 can make a determination to stop the transport of theworkpiece.

FIG. 9 schematically shows an example of the transfer process performedby the transfer system 100. FIG. 9 may be an example of informationprocessing in the transfer control unit 436. According to the presentembodiment, first, at S912, the transport target specifying unit 522 candetermine the package 102 that is to be the target of the transportprocess (sometimes referred to as the workpiece), from among one or morepackages 102 mounted on the depalletizing platform 110, based on theimage captured by the image capturing apparatus 160.

Next, at S914, the transport target specifying unit 522 can access theproduct information storage unit 452 and check whether there is apackage that matches the feature of the outer appearance of theworkpiece among the one or more packages registered in the productinformation storage unit 452. For example, the product informationstorage unit 452 can store information indicating the feature of theouter appearance of the package to be used for a product or service, inassociation with identification information of this product or service.The transport target specifying unit 522 can make a request to theproduct information storage unit 452 for a search for a package thatmatches the feature of the outer appearance of the workpiece. Theproduct information storage unit 452 can compare the features of theouter appearances of one or more packages stored in the productinformation storage unit 452 to the feature of the outer appearance ofthe workpiece, and extracts the identification information of a productor service of a package whose feature is identical or similar. Theproduct information storage unit 452 can output the extractedidentification information of the product or service as a response tothe request described above. In this way, the transport targetspecifying unit 522 can judge whether the type of the current workpieceis the same as the type of a package that is already registered.

If the workpiece is not registered in the product information storageunit 452 (S914: No), at S920, a product registration process can beperformed. Specifically, the product information registering unit 440can register information representing the characteristic of the currentworkpiece in the product information storage unit 452. When the productregistration process of the current workpiece is completed, the processof S932 can be performed.

On the other hand, if the workpiece is registered in the productinformation storage unit 452 (S914: Yes), at S932, the trajectory pathplanning unit 530 can plan the trajectory path of the end effector 140during the period from when the workpiece arranged on the depalletizingplatform 110 is gripped by the end effector 140 to when this workpieceis placed at a prescribed position on the reception platform 120, forexample. In the present embodiment, the trajectory path planning unit530 can plan the trajectory path such that, after the end effector 140has gripped the workpiece, the robot 130 lifts up the workpiece to aprescribed height and temporarily stops the workpiece at this position.It should be noted that the trajectory path planning unit 530 may planthe trajectory path of the distal end of the robot arm 132.

Furthermore, at S932, the algorithm determining unit 542 can divide thetrajectory path planned by the trajectory path planning unit 530 into aplurality of segments, and determine an algorithm to be used by theabnormality detecting unit 544 to detect an abnormality for eachsegment. For example, in a case where the trajectory path 600 describedin relation to FIG. 6 has been planned by the trajectory path planningunit 530, the algorithm determining unit 542 can make a determination todetect an abnormality based on the comparison result of the registrationdata comparing unit 720 in segment B. The algorithm determining unit 542can make a determination to detect an abnormality based on thecomparison result of the reference data comparing unit 750 in segmentCm. The algorithm determining unit 542 can make a determination todetect an abnormality based on the comparison result of the estimationdata comparing unit 740 in segment Ch. The algorithm determining unit542 can make a determination to detect an abnormality based on thecomparison result of the reference data comparing unit 750 in segment D.

Next, at S934, the control signal output unit 552 can generate a controlsignal for controlling the operation of the robot 130. The controlsignal output unit 552 can determine the change over time of the angleof each of the plurality of joints included in the robot arm 132, suchthat the end effector 140 moves along the trajectory path planned by thetrajectory path planning unit 530. The control signal output unit 552can generate a control signal for controlling the operation of theplurality of motors 232 for adjusting the angle of each of the pluralityof joints included in the robot arm 132. The control signal output unit552 can transmit the generated control signal to the drive control unit134. In this way, the workpiece transport process can be started.

Next, at S936, the registration data comparing unit 720 can compare (i)the information relating to the characteristic of the packagecorresponding to the workpiece, which is registered in the productinformation storage unit 452, to (ii) the information relating to thecharacteristic of the workpiece determined based on the actual measureddata relating to the workpiece. If these pieces of information match,the abnormality detecting unit 544 does not need to detect anabnormality. On the other hand, if these pieces of information do notmatch, the abnormality detecting unit 544 can detect that there is anabnormality. As described above, in the present embodiment, theworkpiece can be temporarily stopped at the prescribed position. Theregistration data comparing unit 720 preferably compares these pieces ofinformation while the workpiece is stopped.

If the abnormality detecting unit 544 has detected an abnormality (S936:No), the plan change process can be performed at S940. Specifically, thechanging unit 546 can make a determination to change the plan of thetrajectory path planning unit 530, update the product informationstorage unit 452, and the like. If the changing unit 546 has made adetermination to change the plan of the trajectory path planning unit530, the changing unit 546 can transmit information representing thecontent of this change to the control signal output unit 552. Thecontrol signal output unit 552 can generate a control signal causingcompliance with the content of this change. The control signal outputunit 552 can transmit the generated signal to the drive control unit134. When the plan change process is completed, the process of S952 canbe performed.

On the other hand, if the abnormality detecting unit 544 has notdetected an abnormality (S936: Yes), the workpiece transport process canbe continued. After this, at S952, the abnormality detecting unit 544can detect the abnormality based on the comparison result of theestimation data comparing unit 740 while the workpiece moves alongsegment Ch of the trajectory path 600.

If the abnormality detecting unit 544 has detected an abnormality (S954:Yes), the stop process can be performed at S960, for example.Specifically, the stop judging unit 840 can make a determination to stopthe transport of the workpiece, and output information representing thatthe transport of the workpiece is to be stopped to the warninginformation output unit 554. The warning information output unit 554 cannotify the operator about the information representing that thetransport of the workpiece is to be stopped, in accordance with theoccurrence of an abnormality. After this, the workpiece transportprocess can be finished.

On the other hand, if the abnormality detecting unit 544 has notdetected an abnormality (S954: No), at S956, the abnormality detectingunit 544 can judge whether the transport of the workpiece has beencompleted. If it is judged that the transport of the workpiece has notbeen completed (S956: No), the process of S952 can be repeated. On theother hand, if it is judged that the transport of the workpiece has beencompleted (S956: Yes), the workpiece transport process can be finished.

FIG. 10 shows an example of a computer 3000 in which aspects of thepresent invention may be wholly or partly embodied. A portion of thetransfer system 100 may be realized by the computer 3000. For example,at least one of the drive control unit 134 and the transfer controlapparatus 150 can be realized by the computer 3000.

A program that is installed in the computer 3000 can cause the computer3000 to perform operations associated with apparatuses of theembodiments of the present invention or to function as one or more“units” thereof, and/or cause the computer 3000 to perform processes ofthe embodiments of the present invention or steps thereof. Such aprogram may be executed by the CPU 3012 to cause the computer 3000 toperform certain operations associated with some or all of the blocks offlowcharts and block diagrams described herein.

The computer 3000 according to the present embodiment can include a CPU3012, a RAM 3014, a graphic controller 3016, and a display device 3018,which are mutually connected by a host controller 3010. The computer3000 can also include input/output units such as a communicationinterface 3022, a hard disk drive 3024, a DVD-ROM drive 3026 and an ICcard drive, which are connected to the host controller 3010 via aninput/output controller 3020. The computer can also include legacyinput/output units such as a ROM 3030 and a keyboard 3042, which areconnected to the input/output controller 3020 through an input/outputchip 3040.

The CPU 3012 can operate according to programs stored in the ROM 3030and the RAM 3014, thereby controlling each unit. The graphic controller3016 can obtain image data generated by the CPU 3012 on a frame bufferor the like provided in the RAM 3014 or in itself, and cause the imagedata to be displayed on the display device 3018.

The communication interface 3022 can communicate with other electronicdevices via a network. The hard disk drive 3024 can store programs anddata used by the CPU 3012 within the computer 3000. The DVD-ROM drive3026 can read the programs or the data from the DVD-ROM 3001, andprovide the hard disk drive 3024 with the programs or the data via theRAM 3014. The IC card drive can read programs and data from an IC card,and/or write programs and data into the IC card.

The ROM 3030 can store therein a boot program or the like executed bythe computer 3000 at the time of activation, and/or a program dependingon the hardware of the computer 3000. The input/output chip 3040 mayalso connect various input/output units via a parallel port, a serialport, a keyboard port, a mouse port, and the like to the input/outputcontroller 3020.

A program can be provided by computer readable media such as the DVD-ROM3001 or the IC card. The program can be read from the computer readablemedia, installed into the hard disk drive 3024, RAM 3014, or ROM 3030,which are also examples of computer readable media, and executed by theCPU 3012. The information processing described in these programs can beread into the computer 3000, resulting in cooperation between a programand the above-mentioned various types of hardware resources. Anapparatus or method may be constituted by realizing the operation orprocessing of information in accordance with the usage of the computer3000.

For example, when communication is performed between the computer 3000and an external device, the CPU 3012 may execute a communication programloaded onto the RAM 3014 to instruct communication processing to thecommunication interface 3022, based on the processing described in thecommunication program. The communication interface 3022, under controlof the CPU 3012, can read transmission data stored on a transmissionbuffering region provided in a recording medium such as the RAM 3014,the hard disk drive 3024, the DVD-ROM 3001, or the IC card, and transmitthe read transmission data to a network or writes reception datareceived from a network to a reception buffering region or the likeprovided on the recording medium.

In addition, the CPU 3012 may cause all or a necessary portion of a fileor a database to be read into the RAM 3014, the file or the databasehaving been stored in an external recording medium such as the hard diskdrive 3024, the DVD-ROM drive 3026 (DVD-ROM 3001), the IC card, and thelike, and perform various types of processing on the data on the RAM3014. The CPU 3012 may then write back the processed data to theexternal recording medium.

Various types of information, such as various types of programs, data,tables, and databases, may be stored in the recording medium to undergoinformation processing. The CPU 3012 may perform various types ofprocessing on the data read from the RAM 3014, which includes varioustypes of operations, processing of information, condition judging,conditional branch, unconditional branch, search/replace of information,and the like, as described throughout this disclosure and designated byan instruction sequence of programs, and writes the result back to theRAM 3014. In addition, the CPU 3012 may search for information in afile, a database, and the like, in the recording medium. For example,when a plurality of entries, each having an attribute value of a firstattribute associated with an attribute value of a second attribute, arestored in the recording medium, the CPU 3012 may search for an entrymatching the condition whose attribute value of the first attribute isdesignated, from among the plurality of entries, and read the attributevalue of the second attribute stored in the entry, thereby obtaining theattribute value of the second attribute associated with the firstattribute satisfying the predetermined condition.

The above-explained program or software modules may be stored in thecomputer readable media on or near the computer 3000. In addition, arecording medium such as a hard disk or a RAM provided in a serversystem connected to a dedicated communication network or the Internetcan be used as the computer readable media, thereby providing theprogram to the computer 3000 via the network.

While the embodiments of the present invention have been described, thetechnical scope of the invention is not limited to the above describedembodiments. It is apparent to persons skilled in the art that variousalterations and improvements can be added to the above-describedembodiments. Features described in relation to a certain embodiment canbe applied to the other embodiments, as long as this does not result ina technical contradiction. Each configurational element may have thesame features as other configurational elements having the same name butdifferent reference numerals. It is also apparent from the scope of theclaims that the embodiments added with such alterations or improvementscan be included in the technical scope of the invention.

The operations, procedures, steps, and stages of each process performedby an apparatus, system, program, and method shown in the claims,embodiments, or diagrams can be performed in any order as long as theorder is not indicated by “prior to,” “before,” or the like and as longas the output from a previous process is not used in a later process.Even if the process flow is described using phrases such as “first” or“next” in the claims, embodiments, or diagrams, it does not necessarilymean that the process must be performed in this order.

Various embodiments of the present invention may be described withreference to flowcharts and block diagrams whose blocks may represent(1) steps of processes in which operations are performed or (2) sectionsof apparatuses responsible for performing operations. Certain steps andsections may be implemented by dedicated circuitry, programmablecircuitry supplied with computer-readable instructions stored oncomputer-readable media, and/or processors supplied withcomputer-readable instructions stored on computer-readable media.Dedicated circuitry may include digital and/or analog hardware circuitsand may include integrated circuits (IC) and/or discrete circuits.Programmable circuitry may include reconfigurable hardware circuitscomprising logical AND, OR, XOR, NAND, NOR, and other logicaloperations, flip-flops, registers, memory elements, and the like, suchas field-programmable gate arrays (FPGA), programmable logic arrays(PLA), and the like.

Computer-readable media may include any tangible device that can storeinstructions for execution by a suitable device, such that thecomputer-readable medium having instructions stored therein comprises anarticle of manufacture including instructions which can be executed tocreate means for performing operations specified in the flowcharts orblock diagrams. Examples of computer-readable media may include anelectronic storage medium, a magnetic storage medium, an optical storagemedium, an electromagnetic storage medium, a semiconductor storagemedium, and the like. More specific examples of computer-readable mediamay include a floppy disk, a diskette, a hard disk, a random accessmemory (RAM), a read-only memory (ROM), an erasable programmableread-only memory (EPROM or Flash memory), an electrically erasableprogrammable read-only memory (EEPROM), a static random access memory(SRAM), a compact disc read-only memory (CD-ROM), a digital versatiledisk (DVD), a BLU-RAY (registered trademark) disc, a memory stick, anintegrated circuit card, and the like.

Computer-readable instructions may include assembler instructions,instruction-set-architecture (ISA) instructions, machine instructions,machine dependent instructions, microcode, firmware instructions,state-setting data, or either source code or object code written in anycombination of one or more programming languages, including an objectoriented programming language such as Smalltalk, JAVA (registeredtrademark), C++, and the like, and conventional procedural programminglanguages, such as the “C” programming language or similar programminglanguages.

Computer-readable instructions may be provided to a processor of ageneral purpose computer, special purpose computer, or otherprogrammable data processing apparatus, or to programmable circuitry,locally or via a local area network (LAN), wide area network (WAN) suchas the Internet, and the like, to execute the computer-readableinstructions to create means for performing operations specified in theflowcharts or block diagrams. Examples of processors include computerprocessors, processing units, microprocessors, digital signalprocessors, controllers, microcontrollers, and the like.

LIST OF REFERENCE NUMERALS

100: transfer system, 102: package, 110: depalletizing platform, 120:reception platform, 130: robot, 132: robot arm, 134: drive control unit,140: end effector, 150: transfer control apparatus, 160: image capturingapparatus, 180: sensor, 190: sensor, 232: motor, 234: encoder, 242:force sensation sensor, 246: gripping member, 310: main body, 312:depressurization chamber, 314: connection member, 320: adhesion pad,330: valve, 340: intake pipe, 422: image data acquiring unit, 424: arminformation acquiring unit, 426: hand information acquiring unit, 432:input/output control unit, 434: image capturing control unit, 436:transfer control unit, 440: product information registering unit, 450:storage unit, 452: product information storage unit, 454: workpieceinformation storage unit, 456: model information storage unit, 458:setting information storage unit, 520: image analyzing unit, 522:transport target specifying unit, 524: grip state determining unit, 530:trajectory path planning unit, 542: algorithm determining unit, 544:abnormality detecting unit, 546: changing unit, 552: control signaloutput unit, 554: warning information output unit, 600: trajectory path,standby position, 620: grip position, 622: transport preparationposition, 624: placement preparation position, 630: release position,720: registration data comparing unit, 730: output simulator, 740:estimation data comparing unit, 750: reference data comparing unit, 762:mass abnormality detecting unit, 764: center of mass abnormalitydetecting unit, 770: abnormality specifying unit, 820: registrationinformation changing unit, 830: setting velocity changing unit, 840:stop judging unit, 3000: computer, 3001: DVD-ROM, 3010: host controller,3012: CPU, 3014: RAM, 3016: graphic controller, 3018: display device,3020: input/output controller, 3022: communication interface, 3024: harddisk drive, 3026: DVD-ROM drive, 3030: ROM, 3040: input/output chip,3042: keyboard

What is claimed is:
 1. A control apparatus comprising: a force sensationinformation acquiring unit configured to acquire force sensationinformation for representing a magnitude of at least one of a force anda torque at a distal end of a manipulator while a target item that is atarget to be transported by the manipulator is being transported; a massinformation acquiring unit configured to acquire mass information forrepresenting a predetermined value as a mass of the target item; a planinformation acquiring unit configured to acquire plan information forrepresenting content of a plan relating to a trajectory path of at leastone of the distal end of the manipulator and a gripping unit forgripping the target item arranged at the distal end; a force sensationestimating unit configured to determine an estimated magnitude of atleast one of a force and a torque to be detected at the distal end ofthe manipulator when the manipulator transports the target item, basedon the mass information and the plan information; and a first detectingunit configured to detect an abnormality relating to transporting of thetarget item, based on the magnitude of at least one of the force and thetorque represented by the force sensation information and based on theestimated magnitude of at least one of the force and the torquedetermined by the force sensation estimating unit, by detecting a casewhere an absolute value of a difference between the magnitude of atleast one of the force and the torque represented by the force sensationinformation and the estimated magnitude of at least one of the force andthe torque determined by the force sensation estimating unit is greaterthan a first threshold value, wherein the first threshold value isdetermined to become greater when a length of a delay time concerningacquisition of the force sensation information by the force sensationinformation acquiring unit is longer than a predetermined value.
 2. Thecontrol apparatus according to claim 1, wherein the force sensationestimating unit is configured to estimate a direction of at least one ofthe force and the torque at the distal end of the manipulator, and thefirst detecting unit is configured to detect the abnormality relating tothe transporting of the target item by detecting the direction of atleast one of the force and the torque represented by the force sensationinformation and a direction of at least one of the force and the torqueestimated by the force sensation estimating unit, wherein the forcesensation information represents the magnitude and the direction of atleast one of the force and the torque at the distal end of themanipulator.
 3. The control apparatus according to claim 1, wherein thefirst detecting unit is configured to detect the abnormality in a timeperiod during which the absolute value of the difference between themagnitude of at least one of the force and the torque represented by theforce sensation information and the estimated magnitude of at least oneof the force and the torque determined by the force sensation estimatingunit is greater than the first threshold value, and where theabnormality continues for a time period greater than a second thresholdvalue.
 4. The control apparatus according to claim 1, wherein the forcesensation estimating unit is configured to estimate the magnitude of atleast one of the force and the torque to be detected at the distal endof the manipulator at each of a plurality of elapsed times, based on theplan information, the force sensation estimating unit is configured tooutput estimation information in which each of the plurality of elapsedtimes is associated with the estimated magnitude of at least one of theforce and torque, the first detecting unit is configured to associatethe information representing the magnitude of at least one of the forceand the torque included in the force sensation information with theinformation representing the estimated magnitude of at least one of theforce and the torque included in the estimation information, based oninformation representing a plurality of timings included in the forcesensation information and information representing the plurality ofelapsed times included in estimation information, and the firstdetecting unit is configured to detect the abnormality relating to thetransporting of the target item based on the information representingthe magnitude of at least one of the force and the torque included inthe force sensation information and the information representing theestimated magnitude of at least one of the force and the torque includedin the estimation information that are associated with each other,wherein the force sensation information includes informationrepresenting the plurality of timings and information representing themagnitude of at least one of the force and the torque at the distal endat each timing, and the plan information includes informationrepresenting the plurality of elapsed times from when the target itempassed a reference position in a trajectory path and informationrepresenting an angle of each of a plurality of joints included in themanipulator at each elapsed time.
 5. The control apparatus according toclaim 1, further comprising: an angle information acquiring unitconfigured to acquire angle information, wherein the angle informationis for representing an angle of each of a plurality of joints includedin the manipulator, wherein the angle information includes informationrepresenting a plurality of timings and information representing anangle of each of the plurality of joints at each timing, wherein theforce sensation information includes information representing aplurality of timings and information representing a magnitude of atleast one of the force and the torque at the distal end at each timing,and wherein: the force sensation estimating unit is configured todetermine an angle of each of the plurality of joints at each of aplurality of positions on the trajectory path based on the planinformation; the force sensation estimating unit is configured toestimate magnitude of at least one of a force and a torque to bedetected at the distal end of the manipulator at each of the pluralityof positions on the trajectory path; the force sensation estimating unitis configured to output estimation information in which the angle ofeach of the plurality of joints and the estimated magnitude of at leastone of the force and the torque are associated with each other; thefirst detecting unit is configured to associate the informationrepresenting the angle of each of the plurality of joints with theinformation representing the magnitude of at least one of the force andthe torque at the distal end, based on the information representing theplurality of timings included in each of the angle information and theforce sensation information; the first detecting unit is configured toassociate the information representing the magnitude of at least one ofthe force and the torque included in the force sensation informationwith information representing the estimated magnitude of at least one ofthe force and the torque included in the estimation information, basedon the information representing the angle of each of the plurality ofjoints; and the first detecting unit is configured to detect anabnormality relating to the transporting of the target item, based onthe information representing the magnitude of at least one of the forceand the torque included in the force sensation information and theinformation representing the estimated magnitude of at least one of theforce and the torque included in the estimation information that areassociated with each other.
 6. The control apparatus according to claim1, wherein the abnormality relating to the transporting of the targetitem represents at least one of an identification problem of the targetitem, a gripping problem of the target item, dropping of the targetitem, damage of the target item, and a collision involving the targetitem.
 7. The control apparatus according to claim 1, further comprising:a depressurization information acquiring unit configured to acquiredepressurization information representing a magnitude of pressure insidea depressurization chamber arranged in the gripping unit, wherein thefirst detecting unit is configured to detect damage of the target itemin a case where (i) neither an abnormality relating to pressurerepresented by the depressurization information nor an abnormalityrelating to the mass of the target item represented by the forcesensation information is detected and (ii) an abnormality relating to acenter of mass of the target item represented by the force sensationinformation is detected.
 8. The control apparatus according to claim 1,further comprising: an image information acquiring unit configured toacquire image data of the target item at a timing before the target itemis gripped by the manipulator; a center of mass estimating unitconfigured to estimate a position of a center of mass of the targetitem, based on the image data; and a grip position determining unitconfigured to determine a grip position at which the target item is tobe gripped by the gripping unit, and wherein: the force sensationestimating unit is configured to determine the estimated magnitude of atleast one of a force and a torque to be detected at the distal end, in acase where the gripping unit grips the target item at the grip positionand the target item is lifted up, based on the mass of the target itemrepresented by the mass information, the position of the center of massof the target item estimated by the center of mass estimating unit, andthe grip position determined by the grip position determining unit; andthe first detecting unit is configured to detect at least one of anidentification problem of the target item, a gripping problem of thetarget item, and damage of the target item, based on the magnitude of atleast one of the force and the torque represented by the force sensationinformation and the estimated magnitude of at least one of the force andthe torque determined by the force sensation estimating unit.
 9. Thecontrol apparatus according to claim 1, further comprising: an imageinformation acquiring unit configured to acquire image data of thetarget item at a timing before the target item is gripped by themanipulator; a geometric center identifying unit configured to identifya position of a geometric center of a top surface of the target item,based on the image data; a grip position determining unit configured todetermine a grip position at which the target item is to be gripped bythe gripping unit; a center of mass identifying unit configured toidentify a position of a center of mass of the target item based on (i)the magnitude of at least one of the force and the torque represented bythe force sensation information in a case where the gripping unit gripsthe target item at the grip position and the target item is lifted up bythe gripping unit and (ii) the grip position of the target item; and asecond detecting unit configured to detect at least one of anidentification problem of the target item, a gripping problem of thetarget item, and damage of the target item, in a case where a distancebetween a position of the geometric center of the top surface of thetarget item and a position at which the center of mass of the targetitem is projected onto the top surface of the target item is greaterthan a third threshold value.
 10. The control apparatus according toclaim 1, further comprising: an image information acquiring unitconfigured to acquire image data of the target item at a timing beforethe target item is gripped by the manipulator; a geometric centeridentifying unit configured to identify a position of a geometric centerof a top surface of the target item, based on the image data; a gripposition determining unit configured to determine a grip position atwhich the target item is to be gripped by the gripping unit; and acenter of mass identifying unit configured to identify a position of acenter of mass of the target item based on (i) the magnitude of at leastone of the force and the torque represented by the force sensationinformation in a case where the gripping unit grips the target item atthe grip position and the target item is lifted up by the gripping unitand (ii) the grip position of the target item, and wherein the gripposition determining unit is for determining a position to be a moresuitable grip position of the target item in a case where a distancebetween a position of the geometric center of the top surface of thetarget item and a position at which the center of mass of the targetitem is projected onto the top surface of the target item is greaterthan a third threshold value.
 11. The control apparatus according toclaim 1, further comprising: a third detecting unit configured to detectat least one of an identification problem of the target item, a grippingproblem of the target item, and damage of the target item, in a casewhere an absolute value of a difference between (i) mass of the targetitem determined based on the magnitude of at least one of the force andthe torque represented by the force sensation information in a casewhere the gripping unit lifts up the target item and (ii) the mass ofthe target item represented by the mass information, is greater than afourth threshold value.
 12. The control apparatus according to claim 1,further comprising: an adjusting unit configured to make a determinationto adjust a transport speed of the target item in a case where the firstdetecting unit has detected the abnormality.
 13. A transport apparatuscomprising: the control apparatus according to claim 1; and themanipulator.
 14. A non-transitory computer-readable storage mediumhaving recorded thereon a program including instructions that, whenexecuted by a computer, causes the computer to perform operationscomprising: acquiring force sensation information for representing amagnitude of at least one of a force and a torque at a distal end of amanipulator while a target item that is a target to be transported bythe manipulator is being transported; acquiring mass information forrepresenting a predetermined value as a mass of the target item;acquiring plan information representing content of a plan relating to atrajectory path of at least one of the distal end of the manipulator anda gripping unit for gripping the target item arranged at the distal end;determining an estimated magnitude of at least one of a force and atorque for detecting at the distal end of the manipulator when themanipulator transports the target item, based on the mass informationand the plan information; and detecting an abnormality relating totransporting of the target item, based on the magnitude of at least oneof the force and the torque represented by the force sensationinformation and based on the estimated magnitude of at least one of theforce and the torque, by detecting a case where an absolute value of adifference between the magnitude of at least one of the force and thetorque represented by the force sensation information and the estimatedmagnitude of at least one of the force and the torque is greater than afirst threshold value, wherein the first threshold value is determinedto become greater when a length of a delay time concerning the acquiringof the force sensation information is longer than a predetermined value.15. A control method comprising: acquiring force sensation informationfor representing a magnitude of at least one of a force and a torque ata distal end of a manipulator while a target item that is a target to betransported by the manipulator is being transported; acquiring massinformation for representing a predetermined value as a mass of thetarget item; acquiring plan information representing content of a planrelating to a trajectory path of at least one of the distal end of themanipulator and a gripping unit for gripping the target item arranged atthe distal end; determining an estimated magnitude of at least one of aforce and a torque for detecting at the distal end of the manipulatorwhen the manipulator transports the target item, based on the massinformation and the plan information; and detecting an abnormalityrelating to transporting of the target item, based on the magnitude ofat least one of the force and the torque represented by the forcesensation information and based on the estimated magnitude of at leastone of the force and the torque, by detecting a case where an absolutevalue of a difference between the magnitude of at least one of the forceand the torque represented by the force sensation information and theestimated magnitude of at least one of the force and the torque isgreater than a first threshold value, wherein the first threshold valueis determined to become greater when a length of a delay time concerningthe acquiring of the force sensation information is longer than apredetermined value.